Development of a Library based on Skeletal Parallel Programming in Fortress
نویسندگان
چکیده
This is a final report of our joint research project " Development of a library based on skeletal parallel programming in Fortress " between Programing Sun Microsystems and University of Tokyo agreed and concluded the collaborative research agreement of this project, with the following particulars. Research Purpose To provide programmers with a high-level parallel programming interface in Fortress programming language, which supports systematic development of reliable and efficient parallel programs with the library Research Description To develop cooperatively a library based on skeletal parallelism for Fortress programming language We decided to start by solving the " scan " problem at the meeting in San Diego. (The 0th meeting) Feb. 2008 The 1st meeting. We have discussed programming with GoG generators-of-generators. Mar. 2008 We proposed and implemented a generator-based GoG Fortress Library to support efficient generate-and-test parallel programming style We visited the Sun Labs Burlington Campus to learn Fortress and improved the GoG library. (The 2nd meeting) Jul. 2008 We tried to apply the ideas of the GoG library to a matrix library with dispatching mechanism, and presented the result in a domestic conference in Japan. Nov. 2008 The 3rd meeting. We discussed the matrix library and ideas on GoGs for 2D data structures. Dec. 2008 We started to apply the ideas of GoGs to 2D data structures, and implemented some prototype GoGs and multiple reductions.
منابع مشابه
A Performance and Productivity Study using MPI, Titanium, and Fortress
The popularity of cluster computing has increased focus on usability, especially in the area of programmability. Languages and libraries that require explicit message passing have been the standard. New languages, designed for cluster computing, are coming to the forefront as a way to simplify parallel programming. Titanium and Fortress are examples of this new class of programming paradigms. T...
متن کاملGenerators-of-Generators Library with Optimization Capabilities in Fortress
To resolve difficulties in parallel programming, a large number of studies are conducted on parallel skeletons and optimization theorems over skeleton programs. However, two nontrivial tasks still remain unsettled when we need nested data structures: One is composing skeletons to generate and consume them; the other is applying optimization theorems to obtain efficient parallel programs. In thi...
متن کاملMATHEMATICAL ENGINEERING TECHNICAL REPORTS Generator-based GG Fortress Library —Collection of GGs and Theories—
We have proposed a novel library called “GG Library” on Fortress in the previous report. The library supports easy development of correct and efficient parallel programs, allowing users to write naive generate-and-test programs easily and uniformly with generator-ofgenerators that abstract generation of nested data structures. The library has an automatic optimization mechanism by dispatching e...
متن کاملParleda: a Library for Parallel Processing in Computational Geometry Applications
ParLeda is a software library that provides the basic primitives needed for parallel implementation of computational geometry applications. It can also be used in implementing a parallel application that uses geometric data structures. The parallel model that we use is based on a new heterogeneous parallel model named HBSP, which is based on BSP and is introduced here. ParLeda uses two main lib...
متن کاملWork-First and Help-First Scheduling Policies for Terminally Strict Parallel Programs
Multiple programming models are emerging to address an increased need for dynamic task parallelism in applications for multicore processors and shared-addressspace parallel computing. Examples include OpenMP 3.0, Java Concurrency Utilities, Microsoft Task Parallel Library, Intel Thread Building Blocks, Cilk, X10, Chapel, and Fortress. Scheduling algorithms based on work stealing, as embodied in...
متن کامل